#include "stm32f1xx_hal.h"
#include "DevicesPower.h"



void vPowerInit(void)
{
    GPIO_InitTypeDef GPIO_InitStruct = {0};

    /* GPIO Ports Clock Enable */
    __HAL_RCC_GPIOE_CLK_ENABLE();

    /*Configure GPIO pin Output Level */
    HAL_GPIO_WritePin(GPIOE, GPIO_PIN_0 | GPIO_PIN_12, GPIO_PIN_RESET);

    /*Configure GPIO pin : PtPin */
    GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
    GPIO_InitStruct.Pull = GPIO_NOPULL;
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
    GPIO_InitStruct.Pin = GPIO_PIN_0 | GPIO_PIN_12;
    HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);

    vPowerOpen(POWER_ALL);
}

void vPowerOpen(uint16_t usNumber)
{
    if(usNumber & POWER_COM)
    {
        POWER_COM_ENABLE();
    }

    if(usNumber & POWER_5V)
    {
        POWER_5V_ENABLE();
    }
}

void vPowerClose(uint16_t usNumber)
{
    if(usNumber & POWER_COM)
    {
        POWER_COM_DISABLE();
    }

    if(usNumber & POWER_5V)
    {
        POWER_5V_DISABLE();
    }
}
